//package com.qf.shop.filter;
//
//import javax.servlet.*;
//import javax.servlet.annotation.WebFilter;
//import javax.servlet.http.Cookie;
//import javax.servlet.http.HttpServletRequest;
//import javax.servlet.http.HttpServletResponse;
//import javax.servlet.http.HttpSession;
//import java.io.IOException;
//import java.util.Arrays;
//import java.util.List;
//
///**
// * @ Author     ：lzq.
// * @ Date       ：Created in 23:42 2020/10/23
// */
//@WebFilter("/*")
//public class SysLoginFilter implements Filter {
//    private List<String> staticResources = Arrays.asList(".js", "webp", ".jpg", ".png", ".css","woff2");
//
//    @Override
//    public void init(FilterConfig filterConfig) throws ServletException {
//
//    }
//
//    //判断uri中是否包含静态的资源
//    private boolean isContainsStaticResource(String uri) {
//        for(String staticResource: staticResources) {
//            if(uri.endsWith(staticResource)) {
//                return true;
//            }
//        }
//        return false;
//    }
//
//    @Override
//    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
//        HttpServletRequest request = (HttpServletRequest)servletRequest;
//        HttpServletResponse response = (HttpServletResponse)servletResponse;
//
//        String uri = request.getRequestURI();
//
//        if ( isContainsStaticResource(uri)
//                || uri.contains("/sysUser/login")
//                || uri.contains("/login.html")
//
//                )
//        {
//
//            System.out.println("2222");
//            filterChain.doFilter(request,response);
//            return;
//        }
//
//        HttpSession session = request.getSession();
//        // 获取用户在登录成功之后设置的用户信息
//        Object object = session.getAttribute("user");
//        if(null != object) {
//
//            filterChain.doFilter(request, response);
//            return;
//        }
//
//        //4.cookie放行
//        Cookie[] cookies = request.getCookies();
//        if (cookies != null) {
//            for (Cookie cookie : cookies) {
//                System.out.println(cookie.toString()+"1111111");
//                if ("user".equals(cookie.getName())) {
//                    if (null != cookie.getValue()) {
//                        filterChain.doFilter(request, response);
//                        return;
//                    }
//                }
//            }
//        }
//        System.out.println("11111");
//        response.sendRedirect("/shop/login.html");
//    }
//
//    @Override
//    public void destroy() {
//
//    }
//
//
//}
